#topics-screen {
	position: fixed;
	height: 450px;
	width: 600px;
	top: 50%;
	left: 50%;
	margin-top: -225px;
	margin-left: -300px;
	text-align: center;
}
	#topics-screen h1 { font-size: 20px; font-weight: bold; margin-bottom: 20px; }
	#topics-screen .topic {
		float: left;
		width: 120px;
		height: 140px;
		margin: 5px;
		padding: 10px;
		background: white;
		text-align: center;
		color: black;		
		font-size: 14px;
		font-weight: bold;
		cursor: pointer;
		box-shadow: 0px 0px 3px #dddddd;
	}
		#topics-screen .topic:hover { box-shadow: 0px 0px 3px #aaaaaa; }
		#topics-screen .topic img { width: 120px; margin-bottom: 10px; }
	#start-training {
		display: inline-block;
		margin-top: 20px;
		padding: 7px 10px;
		font-size: 16px;
		font-weight: normal;
		color: white;
		cursor: pointer;
	}
		
#test-screen { display: none; height: 20px; }
	#qn-no {
		position: fixed;
		top: 60px;
		left: 60px;
		font-size: 36px;
		width: 50px;
		line-height: 100%;
		text-align: right;
	}
	#qn-text {
		position: fixed;
		top: 60px;
		left: 130px;
		font-size: 16px;
		width: 800px;
	}
	#mcq { margin-top: 15px; }
		.mcq-option { margin-top: 5px; }
			.mcq-option .box {
				display: inline-block;
				background: #ddd;
				width: 20px;
				height: 20px;
				vertical-align: middle;
				margin-right: 10px;
			}
			.mcq-option .option { font-size: 16px; vertical-align: middle; }
	#subset { margin-top: 20px; }
		#subset .faux-v {
			display: inline-block;
			height: 28px;
			width: 28px;
			margin-right: 10px;
			border-radius: 50px;
			border: 3px solid black;
			text-align: center;
			line-height: 26px;
			font-weight: bold;
		}
	.number-input {
		display: block;
		width: 50px;
		margin-top: 20px;
		padding: 7px 10px;
		box-shadow: #929292 0px 0px 3px inset;
		font-size: 14px;
		text-align: center;
	}
	#current-selection { padding-top: 20px; }
	#ans-key { padding-top: 10px; }
	#undo-ans , #clear-ans {
		display: inline-block;
		margin-top: 20px;
		margin-right: 10px;
		padding: 5px 8px;
		background: #df3939;
		color: white;
		font-size: 14px;
		font-weight: normal;
		cursor: pointer;
	}
		#undo-ans:hover, #clear-ans:hover { background: black; }
	#viz { }
		svg { 
			position: fixed;
			height: 400px;
			top: 50%;
			left: 50%;
			margin-left: -450px;
			margin-top: -150px;
			z-index: -15;
		}
	
	#question-nav {
		width: 100%;
		position: fixed;
		bottom: 42px;
		text-align: center;
		padding: 10px 0px;
		z-index: -11;
		
		color: white;
		font-size: 16px;
		font-weight: bold;
		-moz-user-select: none; -webkit-user-select: none; -ms-user-select:none; user-select:none;
	}
		#question-nav a.qnno {
			padding: 0px 10px;
			cursor: pointer;
			opacity: 0.4;
			text-align: center;
			width: 16px;
		}
			#question-nav a.selected {
				position: relative;
				opacity: 1.0;
			}
			#question-nav a.answered {
				opacity: 1.0;
			}
				#question-nav a.selected:before {
					content: " ";
					position: absolute;
					top: -12px;
					left: 8px;
					height: 0px;
					width: 0px;
					border-style:solid;
					border-width:10px;
					border-color: transparent;
					border-top-color: #eee;
				}
	
	#info {
		position: fixed;
		top: 60px;
		right: 60px;
		width: 200px;
		text-align: right;
	}
		#info #student-name { font-size: 16px; text-transform: uppercase; }
		#info #time-left { font-size: 30px; }
		#submit-test {
			display: inline-block;
			margin-top: 15px;
			background: #df3939;
			color: white;
			padding: 8px 12px;
			font-size: 14px;
			font-weight: bold;
			text-transform: uppercase;
			cursor: pointer;
		}
			#submit-test:hover { background: black; }
			
#result-screen {
	display: none;
	position: fixed;
	height: 260px;
	width: 500px;
	top: 50%;
	left: 50%;
	margin-top: -130px;
	margin-left: -250px;
	text-align: center;
	font-size: 20px;
}
	#result-name {
		font-size: 20px;
		text-transform: uppercase;
	}
	#score {
		margin: 20px 0px;
		font-size: 40px;
		font-weight: bold;
	}
	#goto-answer {
		display: inline-block;
		margin-top: 20px;
		padding: 7px 10px;
		font-size: 16px;
		font-weight: normal;
		color: white;
		cursor: pointer;
	}